package com.briup.corejava.day12;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

/**
 * ArrayList：数组，增删慢，查找快
 * LinkedList：双向链表，增删快，查找慢
 */
public class Test1 {
    public static void main(String[] args) {
        // List<Integer> list = new ArrayList<>();
        List<Integer> list = new LinkedList<>();
        int num = 100000;
        // 循环始终向第2个位置插入元素
        // 记录一下开始时间（毫秒）
        long start = System.currentTimeMillis();
        for (int i = 0; i < num; i++) {
            list.add(0,i*10068);
        }
        // 插入完成之后记录时间
        long end1 = System.currentTimeMillis();
        // 得到的时间差就是耗时
        System.out.println(list.getClass().getName()+"插入耗时："+(end1-start)+"毫秒");

        // 使用普通for循环和get方法进行遍历
        for(int i =0;i<list.size();i++){
            list.get(i);
        }
        // 也可以使用indexOf方法
        System.out.println(list.indexOf(96874*10068));
        long end2 = System.currentTimeMillis();
        System.out.println(list.getClass().getSimpleName()+"查找耗时："+(end2-end1)+"毫秒");
    }
}
